import { isString } from './type'

export const jsonStringify = function (
    value: unknown,
    replacer?: undefined | (number | string)[] | null
) {
    try {
        return JSON.stringify(value, replacer) || ''
    } catch (error) {
        console.error('Error stringify JSON:', error)
        return ''
    }
}

export const jsonParse = function (value: string, defaultValue?: Record<string, unknown>) {
    if (!isString(value)) {
        return defaultValue
    }
    try {
        return JSON.parse(value)
    } catch (error) {
        console.error('Error parsing JSON:', error)
        return defaultValue
    }
}
